package com.sti.framework.models.System.data;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler;
import com.sti.framework.core.data.AbstractAuditingEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.List;

/**
 * 模块： 系统设置 System
 * 表格： 菜单管理 MenuManage
 *
 * @author AutoApi
 */
@EqualsAndHashCode(callSuper = true)
@Data
@TableName(value = "system_menu_manage", autoResultMap = true)
@ApiModel(value = "system_menu_manage", description = "菜单管理")
public class MenuManage extends AbstractAuditingEntity {
    
	/**
	 * 路由路径
	 */
	@ApiModelProperty(value = "路由路径", required = false, example = "")
	private String path;

	/**
	 * 路由名称
	 */
	@ApiModelProperty(value = "路由名称", required = false, example = "")
	private String name;

	/**
	 * 中文名称
	 */
	private String labelName;

	/**
	 * vue文件所在
	 */
	@ApiModelProperty(value = "vue文件所在", required = false, example = "")
	private String component;

	/**
	 * 菜单信息
	 */
	@TableField(typeHandler = FastjsonTypeHandler.class)
	@ApiModelProperty(value = "菜单信息", required = false, example = "")
	private Object meta;

	/**
	 * 父级ID
	 */
	@ApiModelProperty(value = "父级ID", required = false, example = "")
	private Long parentId;

	/**
	 * 子菜单
	 */
	@TableField(exist = false)
	private List<MenuManage> children;

}
